aboutsummaryrefslogtreecommitdiffstats
path: root/src/app/groups/[groupId]/@modal/expenses/create/page.tsx
diff options
context:
space:
mode:
authorSebastien Castiel <sebastien@castiel.me>2023-12-19 09:36:40 -0500
committerGitHub <noreply@github.com>2023-12-19 09:36:40 -0500
commit1e66efe5169dfad9a0c62ba42fbf31ce977bf49e (patch)
tree3c2ea81a8b2dd9ba989855de553d65b1bb90b7ad /src/app/groups/[groupId]/@modal/expenses/create/page.tsx
parent66ab0ff82bbcb3294d3a0fb84ae5ffcae9910e26 (diff)
Use modal dialogs for expense creation & edition (#10)
* First attemps at using route interception and modals * Remove route interception * Make it work * Use Vaul on small screens * Improve vaul
Diffstat (limited to 'src/app/groups/[groupId]/@modal/expenses/create/page.tsx')
-rw-r--r--src/app/groups/[groupId]/@modal/expenses/create/page.tsx24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/app/groups/[groupId]/@modal/expenses/create/page.tsx b/src/app/groups/[groupId]/@modal/expenses/create/page.tsx
new file mode 100644
index 0000000..93cc413
--- /dev/null
+++ b/src/app/groups/[groupId]/@modal/expenses/create/page.tsx
@@ -0,0 +1,24 @@
+import { ExpenseModal } from '@/app/groups/[groupId]/@modal/expense-modal'
+import { ExpenseForm } from '@/components/expense-form'
+import { getGroup } from '@/lib/api'
+import { Metadata } from 'next'
+import { notFound } from 'next/navigation'
+
+export const metadata: Metadata = {
+ title: 'Create expense',
+}
+
+export default async function ExpensePage({
+ params: { groupId },
+}: {
+ params: { groupId: string }
+}) {
+ const group = await getGroup(groupId)
+ if (!group) notFound()
+
+ return (
+ <ExpenseModal title="Create expense">
+ <ExpenseForm group={group} />
+ </ExpenseModal>
+ )
+}